home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
lists
/
gem
/
l_0799
/
748
< prev
next >
Wrap
Text File
|
1994-08-27
|
3KB
|
77 lines
Subject: Re: Gem List (fwd)
Date: Tue, 12 Jul 1994 09:28:04 +1000
From: Warwick Allison <warwick@cs.uq.oz.au>
Precedence: bulk
Goemon:
>>If you use a 1-pixel rectangle, then EVERY mouse movement goes back to
>>your program, and your program has to do an objc_find, EVERY TIME.
>
>We're not using "1 pixel rectangles" like you seem to enjoy saying alot :-)
>You can get the current mouse pointer coordinates by any method you like --
>as you will see in the example code, that part was specifically left "open".
1-pixel rectangles is the most efficient method. Of course, your code
would probably have a 0ms timer event! Horror of horrors! [do you use
MTOS?]
>>In a single-tasking environment, it doesn't matter which you do, but in a
>>multitasking environment, the OS having to go back to your program for
>>EVERY mouse movement creates a tremendous amount of overhead that is very
>>wasteful. Compare running your code for every 1 mouse movement to
>>running your code for every 20 mouse movements.
>
>You have to understand how GEM works before you can bring up an argument
>like this.
I *do* understand how GEM works. Stop these sarcastic comments NOW.
>There is another problem here -- our library allows you to set multiple
>timer events and 'attach' them to windows. If we set our event_timer to
>wait for rectangle events, then the timers would become effectively
>useless. The library does need to do events on a regular basis, but only
>mouse events will be done if the application is TOPPED.
GEM doesn't work that way. You wait for multiple events, and if a timer
event expires first, then you process that, then continue waiting for
rectangle events, and whatever other events (such as more timer events).
>Warwick, are you SURE you understand what Extended Object Types are? From
>the way you speak, it sounds like you have no idea why they were designed.
More sarcasm. Ignored.
>You're saying that with Gem++ you would have to add code to support the
>active slider, perhaps doing something like "register_active_slider(TREE,
>object, orientation);" which is insane. Having to write code to support
>an interface when the interface should do those things ITSELF is a pain.
You have to attach the slider to some other components, eg. make them
control something, so you have to do some form of registration anyway.
(In GEM++, it is constructing objects).
>If you want to make a quick change to your interface, with Gem++ you would
>have to recompile the code. With all other libraries it's just a quick dip
>into a resource editor to make that change.
You don't seriously believe this. Only the most mundane of UI changes can
be done without recompilation.
>Is it any wonder why nobody has used Gem++ for anything yet? :-)
The reason is that Atari programmers are forced into using C rather than
C++ by the fact that the only C++ compiler available runs way too slowly,
and uses huge amounts of RAM. We're forced to sit back in the dark ages
writing GUI libraries and standards rather than writing applications with
refined, consistent, object-oriented GUI libraries.
--
Warwick